package com.yz.fanrenmianshi.blackfilter;

import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;

/**
 * 黑名单初始化器
 * 禁用Nacos后，使用本地文件初始化黑名单
 */
@Slf4j
@Component
public class BlackIpInitializer implements CommandLineRunner {

    @Override
    public void run(String... args) throws Exception {
        log.info("开始初始化黑名单（使用本地文件配置）");
        
        // 使用降级策略初始化黑名单，优先使用本地缓存，其次使用fallback配置文件
        BlackIpUtils.rebuildBlackIp(null);
        
        log.info("黑名单初始化完成，当前状态：服务可用={}, 布隆过滤器已初始化", 
                BlackIpUtils.isServiceAvailable());
    }
}